1. Field of the Invention
The present invention relates to an image processing apparatus and an image processing method. More specifically, the present invention relates to an image processing apparatus and an image processing method for efficiently performing a decompression processing, that is, a processing for decompressing image data stored as compressed image data, as a preprocessing of a processing for converting image data into optimum print data.
2. Related Art
When printing Is to be performed based on image data, typically, original image data is not used as it is. A correction processing is generally performed on the original image data so that a printer can print image data and obtain an optimum printing result when performing the printing. After the correction processing, the image data is converted into print data, and the printing is performed using the print data.
The image data is usually stored as compressed image data. Due to this, it is necessary to decompress a compressed image data of the compressed image data before the image data is converted into the print data.
Conventional techniques of performing the decompression processing for decompressing the compressed image data in a standalone printer unconnected to a computer include one for performing the decompression processing using a decompression processing program as software executed by an arithmetic processing device included in the printer. Such a technique is disclosed in, for example, Japanese Patent No. 3661520.
However, the decompression processing by execution of the decompression processing program produces a heavy load. In the hardware environment of a low-price arithmetic processing device normally included in the standalone printer, the heavy load caused by the decompression processing is one cause for performance deterioration.
Examples of a conventional technique for solving the problem of performance deterioration include the following decompression processing technique. Compressed image data is decompressed using hardware by storing such parameters as a file pointer and a rotation information map and such tables as a Huffman decompression table and a quantization table necessary to decompress the compressed image data file in a storage device such as a RAM, an EEPROM or an HDD (hard disk drive), loading those parameters and tables from the storage device into a processing device (hardware) such as an ASIC (application specific integrated circuit) or an arithmetic processing device, and using the parameters and tables loaded into the hardware.
The hardware-based decompression processing performed on the compressed image data is characterized by executing the decompression processing by loading the parameters and the tables into the processing apparatus such as the ASIC from the storage device before using the parameters and the tables without performing the decompression processing using the software executed by the arithmetic processing device. In many cases, the hardware-based, decompression processing has a higher decompression processing rate than that of the software-based based decompression processing.
However, the hardware-based decompression processing has the following disadvantages. If a plurality of image data files included in a print page data file as a printing subject, i.e., a plurality of compressed image data files to be subjected to the decompression processing prior to execution of printing is present, and those compressed image data files are decompressed in parallel using the hardware-based decompression processing technique, then overhead for loading the parameters such as a file pointer and a rotation information map and the tables such as a Huffman decompression table and a quantization table in an SRAM, a register or the like for each image data file and replacing decompression progress information is increased. The longer overhead makes it difficult to perform the hardware-based decompression processing at the higher processing rate than that of the software-based decompression processing.
As stated, the software-based decompression processing is generally lower in processing rate than the hardware-based decompression processing. However, a plurality of compressed image data files as a decompression processing subject is present, that is, if the compressed image data files are switched over frequently, the software-based decompression processing can make such switching easily at high speed, as compared with the hardware-based decompression processing. As a result, the software-based decompression processing can be performed at a higher processing rate than that of the hardware-based decompression processing.